package com.ssy.lingxi.member.merchant.api.fallback.paas;

import com.ssy.lingxi.common.response.ResponseCode;
import com.ssy.lingxi.common.response.Wrapper;
import com.ssy.lingxi.member.merchant.api.feign.paas.RoleControllerFeign;
import com.ssy.lingxi.member.merchant.api.model.vo.paas.PlatformProcessRuleVO;
import com.ssy.lingxi.member.merchant.api.model.vo.paas.RoleAuthVO;
import com.ssy.lingxi.member.merchant.api.model.vo.paas.RoleConfigVO;
import com.ssy.lingxi.member.merchant.api.model.vo.paas.RoleVO;

import javax.validation.Valid;

/**
 * 角色管理接口Fallback
 * @author 万宁
 * @version 2.0.0
 * @date 2021-06-11
 */
public class RoleControllerFeignFallback implements RoleControllerFeign {
    /**
     * 新增角色
     *
     * @param roleVO 接口参数
     * @return 操作结果
     */
    @Override
    public Wrapper<Long> addRole(RoleVO roleVO) {
        return Wrapper.fail(ResponseCode.SERVICE_MERCHANT_MEMBER_ERROR);
    }

    /**
     * 更新角色
     *
     * @param roleVO 接口参数
     * @return 操作结果
     */
    @Override
    public Wrapper<?> updateRole(RoleVO roleVO) {
        return Wrapper.fail(ResponseCode.SERVICE_MERCHANT_MEMBER_ERROR);
    }

    /**
     * 更改角色状态
     *
     * @param roleVO 接口参数
     * @return 操作结果
     */
    @Override
    public Wrapper<?> updateRoleStatus(RoleVO roleVO) {
        return Wrapper.fail(ResponseCode.SERVICE_MERCHANT_MEMBER_ERROR);
    }

    /**
     * 删除角色
     *
     * @param roleVO 接口参数
     * @return 操作结果
     */
    @Override
    public Wrapper<?> deleteRole(RoleVO roleVO) {
        return Wrapper.fail(ResponseCode.SERVICE_MERCHANT_MEMBER_ERROR);
    }

    /**
     * 设置角色权限
     *
     * @param roleAuthVO 接口参数
     * @return 操作结果
     */
    @Override
    public Wrapper<?> setRoleAuth(@Valid RoleAuthVO roleAuthVO) {
        return Wrapper.fail(ResponseCode.SERVICE_MERCHANT_MEMBER_ERROR);
    }

    /**
     * 设置（新增、修改、删除）角色关联的会员配置资料
     *
     * @param configVO 接口参数
     * @return 操作结果
     */
    @Override
    public Wrapper<?> setRoleConfig(@Valid RoleConfigVO configVO) {
        return Wrapper.fail(ResponseCode.SERVICE_MERCHANT_MEMBER_ERROR);
    }

    /**
     * 新增或修改角色关联的平台会员审核流程
     *
     * @param platformProcessVO 接口参数
     * @return 操作结果
     */
    @Override
    public Wrapper<Void> insertOrUpdateBasePlatformProcess(@Valid PlatformProcessRuleVO platformProcessVO) {
        return Wrapper.fail(ResponseCode.SERVICE_MERCHANT_MEMBER_ERROR);
    }
}
